package facade;

import java.util.List;

import javax.ejb.EJB;
import javax.ejb.Stateless;

import model.Emprestimo;
import model.Livro;
import model.Usuario;
import dao.remote.EmprestimoDAORemote;
import dao.remote.LivroDAORemote;
import dao.remote.UsuarioDAORemote;

@Stateless
public class Biblioteca implements BibliotecaRemote {

	@EJB
	private UsuarioDAORemote usuarioDAO;

	@EJB
	private EmprestimoDAORemote emprestimoDAO;

	@EJB
	private LivroDAORemote livroDAO;

	public boolean criarUsuario(String matricula, String nome, String cpf,
			String email, String telefone) {
		return usuarioDAO.salvar(new model.Usuario(matricula, nome, cpf, email,
				telefone));
	}

	public Usuario buscarUsuario(String matricula) {
		return usuarioDAO.buscar(matricula);
	}

	public List<Emprestimo> buscarEmprestimos(String matricula) {
		return emprestimoDAO.buscar(matricula);
	}

	public Emprestimo buscarEmprestimo(long id) {
		return emprestimoDAO.buscar(id);
	}

	public boolean finalizarEmprestimo(long id) {
		Livro livro = emprestimoDAO.buscar(id).getLivro();
		livro.setDisponivel(true);
		return livroDAO.alterar(livro);
	}
}
